﻿#region usings
using System;
using System.Collections.ObjectModel;
using InsuranceAdjuster.Web.Models;
using Papa.Common;
#endregion

namespace InsuranceAdjuster.DesignModels {
    public class VehicleYearMakeModelDesignModel : NotifiableObject{
        public VehicleYearMakeModelDesignModel() {
            this.Years = new ObservableCollection<int>();
            this.Models = new ObservableCollection<string>();
            this.Makes = new ObservableCollection<string>();
            AddYears();
            AddMakes();
            AddModels();
        }

        private void AddModels() {
            this.Models.Add("MDX");
            this.Models.Add("RDX");
            this.Models.Add("RL");
            this.Models.Add("TL");
            this.Models.Add("TSX");
            this.Models.Add("TSX Sport Wagon");
            this.Models.Add("ZDX");
        }

        private void AddYears() {
            for (int i = DateTime.Now.Year - 20; i < DateTime.Now.Year; i++) {
                this.Years.Add(i);
            }
        }

        private void AddMakes() {
            this.Makes.Add("Acura");
            this.Makes.Add("Aston Martin");
            this.Makes.Add("Audi");
            this.Makes.Add("Bentley");
            this.Makes.Add("BMW");
            this.Makes.Add("Bugatti");
            this.Makes.Add("Buick");
            this.Makes.Add("Cadillac");
            this.Makes.Add("Chevrolet");
            this.Makes.Add("Chrysler");
            this.Makes.Add("Dodge");
            this.Makes.Add("Ferrari");
            this.Makes.Add("Fiat");
            this.Makes.Add("Ford");
            this.Makes.Add("GMC");
            this.Makes.Add("Honda");
            this.Makes.Add("Hyundai");
            this.Makes.Add("Infiniti");
            this.Makes.Add("Jaguar");
            this.Makes.Add("Jeep");
            this.Makes.Add("Kia");
            this.Makes.Add("Lamborghini");
            this.Makes.Add("Land Rover");
            this.Makes.Add("Lexus");
            this.Makes.Add("Lincoln");
            this.Makes.Add("Lotus");
            this.Makes.Add("Maserati");
            this.Makes.Add("Maybach");
            this.Makes.Add("Mazda");
            this.Makes.Add("McLaren");
            this.Makes.Add("Mercedes-Benz");
            this.Makes.Add("Mercury");
            this.Makes.Add("MINI");
            this.Makes.Add("Mitsubishi");
            this.Makes.Add("Nissan");
            this.Makes.Add("Porsche");
            this.Makes.Add("Rolls-Royce");
            this.Makes.Add("Saab");
            this.Makes.Add("Scion");
            this.Makes.Add("smart");
            this.Makes.Add("Spyker");
            this.Makes.Add("Subaru");
            this.Makes.Add("Suzuki");
            this.Makes.Add("Tesla");
            this.Makes.Add("Toyota");
            this.Makes.Add("Volkswagen");
            this.Makes.Add("Volvo");
        }
        private ObservableCollection<int> _years;
        public ObservableCollection<int> Years {
            get { return _years; }
            set {
                if (value != _years) {
                    _years = value;
                    RaisePropertyChanged("Years");
                }
            }
        }

        private ObservableCollection<string> _makes;
        public ObservableCollection<string> Makes {
            get { return _makes; }
            set {
                if (value != _makes) {
                    _makes = value;
                    RaisePropertyChanged("Makes");
                }
            }
        }

        private ObservableCollection<string> _models;
        public ObservableCollection<string> Models {
            get { return _models; }
            set {
                if (value != _models) {
                    _models = value;
                    RaisePropertyChanged("Models");
                }
            }
        }
    }
}




